package AccesoDatos;

import Entidades.*;
import java.util.*;
import java.sql.*;

public class datClientes {

    private static Clientes Construir(ResultSet tabla) throws Exception {
        Clientes nuevo = new Clientes();
        nuevo.setIdCliente(tabla.getInt("IdCliente"));
        nuevo.setIdPersona(tabla.getInt("IdPersona"));
        nuevo.setEmail(tabla.getString("Email"));
        nuevo.setEmpresa(tabla.getString("Empresa"));
        return nuevo;
    }

    public static int InsertarCliente( Clientes objCliente) throws Exception {
        Connection cnn = Conexion.getConexion();
        try {
            //PreparedStatement stm = cnn.prepareStatement("INSERT INTO Cliente(IdPersona, Email, Empresa) values(" + persona + ",?,?)");
            //stm.setInt(1, objCliente.getIdPersona());
            //stm.setString(1, objCliente.getEmail());
            //stm.setString(2, objCliente.getEmpresa());
            CallableStatement cstm = cnn.prepareCall("exec IngresarCliente " + objCliente.getIdPersona() + ", '" + objCliente.getEmail() + "', '" + objCliente.getEmpresa() + "'");
            int cont = cstm.executeUpdate();
            return cont;

        } catch (Exception e) {
            throw e;
        } finally {
            cnn.close();
        }
    }

    public static Clientes BuscarClientexID(int id) throws Exception {
        Connection cnn = Conexion.getConexion();
        try {
            Clientes c = new Clientes();
            Statement stm = cnn.createStatement();
            ResultSet tabla = stm.executeQuery("Select * from Cliente where idPersona=" + id);
            if (tabla.next()) {
                c = Construir(tabla);
            }
            return c;
        } catch (Exception e) {
            throw e;
        } finally {
            cnn.close();
        }
    }
}
